package com.joy.mms.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import com.joy.common.annotation.ExcelDictFormat;
import com.joy.common.convert.ExcelDictConvert;
import lombok.Data;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * 设备分类视图对象 mms_machine_category
 *
 * @author Joy
 * @date 2024-12-08
 */
@Data
@ExcelIgnoreUnannotated
public class MachineCategoryVo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @ExcelProperty(value = "id")
    private Long id;

    /**
     * 分类编码
     */
    @ExcelProperty(value = "分类编码")
    private String categoryCode;

    /**
     * 分类编码
     */
    @ExcelProperty(value = "分类编码")
    private String categoryName;

    /**
     * 状态
     */
    @ExcelProperty(value = "状态")
    private String status;

    /**
     * 上一级id
     */
    @ExcelProperty(value = "上一级id")
    private Long parentId;

    /**
     * 是否有下一级
     */
    @ExcelProperty(value = "是否有下一级")
    private Long hasChild;

    /**
     * 类型
     */
    @ExcelProperty(value = "类型")
    private String type;

    /**
     * 根id
     */
    @ExcelProperty(value = "根id")
    private Long rootId;

    /**
     * 父菜单名称
     */
    @TableField(exist = false)
    private String parentName;



    /**
     * 子部门
     */
    @TableField(exist = false)
    private List<MachineCategoryVo> children = new ArrayList<>();


}
